#include <emmintrin.h>  // SSE2
#include <iostream>

int main() {
    __m128i data = _mm_set_epi32(1, 2, 3, 4);        // 创建一个 __m128i 类型的向量
    __m128i* p = (__m128i*)malloc(sizeof(__m128i));  // 分配内存

    _mm_storeu_si128(p, data);  // 将 data 存储到 p 指向的内存

    // 打印存储的值
    int* ptr = (int*)p;
    std::cout << "Stored values: " << ptr[0] << " " << ptr[1] << " " << ptr[2] << " " << ptr[3]
              << std::endl;

    free(p);  // 释放内存
    return 0;
}